home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 14 / Mac Magazin and MacEasy Magazine CD - Issue 14.iso / Wissenschaft & Technik / MacGzip 1.0b0 / Mac / Internet Config / ICKeys.h < prev    next >
Text File  |  1995-05-03  |  6KB  |  170 lines

  1. /*
  2.     The canonical Internet Config interface is defined in Pascal.  These headers have
  3.     not been thoroughly tested.  If there is a conflict between these headers and the
  4.     Pascal interfaces, the Pascal should take precedence.
  5. */
  6.  
  7. /* ///////////////////////////////////////////////////////////////////////////////// */
  8.  
  9. #ifndef __ICKEYS__
  10. #define __ICKEYS__
  11.  
  12. #ifndef __TYPES__
  13. #include <Types.h>
  14. #endif
  15.  
  16. #ifndef __ALIASES__
  17. #include <Aliases.h>
  18. #endif
  19.  
  20. /* ///////////////////////////////////////////////////////////////////////////////// */
  21.  
  22. #define kICRealName "\pRealName"    /* PString */
  23. #define kICEmail "\pEmail"    /* PString -- user@host.domain */
  24. #define kICMailAccount "\pMailAccount"    /* PString -- user@host.domain */
  25. #define kICMailPassword "\pMailPassword"    /* PString -- scrambled */
  26. #define kICNewsAuthUsername "\pNewsAuthUsername"    /* PString -- host.domain */
  27. #define kICNewsAuthPassword "\pNewsAuthPassword"    /* PString -- scrambled */
  28. #define kICArchiePreferred "\pArchiePreferred"    /* PString -- formatted */
  29. #define kICArchieAll "\pArchieAll"    /* STR# -- formatted */
  30. #define kICUMichPreferred "\pUMichPreferred"    /* PString -- formatted */
  31. #define kICUMichAll "\pUMichAll"    /* STR# -- formatted */
  32. #define kICInfoMacPreferred "\pInfoMacPreferred"    /* PString -- formatted */
  33. #define kICInfoMacAll "\pInfoMacAll"    /* STR# -- formatted */
  34. #define kICPhHost "\pPhHost"    /* PString -- host.domain */
  35. #define kICWhoisHost "\pWhoisHost"    /* PString -- host.domain */
  36. #define kICFingerHost "\pFingerHost"    /* PString -- host.domain */
  37. #define kICFTPHost "\pFTPHost"    /* PString -- host.domain */
  38. #define kICTelnetHost "\pTelnetHost"    /* PString -- host.domain */
  39. #define kICSMTPHost "\pSMTPHost"    /* PString -- host.domain */
  40. #define kICNNTPHost "\pNNTPHost"    /* PString -- host.domain */
  41. #define kICGopherHost "\pGopherHost"    /* PString -- host.domain */
  42. #define kICLDAPServer "\pLDAPServer"    /* PString -- host.domain */
  43. #define kICLDAPSearchbase "\pLDAPSearchbase"    /* PString -- string LDAP thing */
  44. #define kICWWWHomePage "\pWWWHomePage"    /* PString -- URL */
  45. #define kICWAISGateway "\pWAISGateway"    /* PString -- no idea */
  46. #define kICListFont "\pListFont"    /* ICFontRecord */
  47. #define kICScreenFont "\pScreenFont"    /* ICFontRecord */
  48. #define kICPrinterFont "\pPrinterFont"    /* ICFontRecord */
  49. #define kICTextCreator "\pTextCreator"    /* ICAppSpec */
  50. #define kICBinaryTypeCreator "\pBinaryTypeCreator"    /* ICFileInfo */
  51. #define kICDownloadFolder "\pDownloadFolder"    /* ICFileSpec */
  52. #define kICSignature "\pSignature"    /* TEXT */
  53. #define kICOrganization "\pOrganization"    /* PString */
  54. #define kICPlan "\pPlan"    /* TEXT */
  55. #define kICQuotingString "\pQuotingString"    /* PString */
  56. #define kICMailHeaders "\pMailHeaders"    /* TEXT */
  57. #define kICNewsHeaders "\pNewsHeaders"    /* TEXT */
  58. #define kICMapping "\pMapping"    /* ICMapEntries */
  59. #define kICCharacterSet "\pCharacterSet"    /* ICCharTable */
  60. #define kICHelper "\pHelper•"    /* ICAppSpec */
  61. #define kICServices "\pServices"    /* ICServices */
  62.  
  63. #if defined(powerc) || defined (__powerc)
  64. #pragma options align=mac68k
  65. #endif
  66.  
  67. struct ICFontRecord {
  68.     short size;
  69.     Style face;
  70.     char pad;
  71.     Str255 font;
  72. };
  73. typedef struct ICFontRecord ICFontRecord, *ICFontRecordPtr, **ICFontRecordHandle;
  74.  
  75. struct ICCharTable {
  76.     unsigned char net_to_mac[256];
  77.     unsigned char mac_to_net[256];
  78. };
  79. typedef struct ICCharTable ICCharTable, *ICCharTablePtr, **ICCharTableHandle;
  80.  
  81. struct ICAppSpec {
  82.     OSType fCreator;
  83.     Str63 name;
  84. };
  85. typedef struct ICAppSpec ICAppSpec, *ICAppSpecPtr, **ICAppSpecHandle;
  86.  
  87. struct ICFileInfo {
  88.     OSType fType;
  89.     OSType fCreator;
  90.     Str63 name;
  91. };
  92. typedef struct ICFileInfo ICFileInfo, *ICFileInfoPtr, **ICFileInfoHandle;
  93.  
  94. struct ICFileSpec {
  95.     Str31 vol_name;
  96.     long vol_creation_date;
  97.     FSSpec fss;
  98.     AliasRecord alias;
  99.     /* plus extra data, aliasSize 0 means no alias manager present when
  100.             ICFileSpecification was created */
  101. };
  102. typedef struct ICFileSpec ICFileSpec, *ICFileSpecPtr, **ICFileSpecHandle;
  103.  
  104. enum {
  105.     ICfile_spec_header_size = sizeof(ICFileSpec) - sizeof(AliasRecord)
  106. };
  107.  
  108. struct ICMapEntry {
  109.     short total_length;
  110.     short fixed_length;
  111.     short version;
  112.     OSType file_type;
  113.     OSType file_creator;
  114.     OSType post_creator;
  115.     long flags;
  116.     /* variable part starts here */
  117.     Str255 extension;
  118.     Str255 creator_app_name;
  119.     Str255 post_app_name;
  120.     Str255 MIME_type;
  121.     Str255 entry_name;
  122. };
  123. typedef struct ICMapEntry ICMapEntry, *ICMapEntryPtr, **ICMapEntryHandle;
  124.  
  125. enum {
  126.     ICmap_binary_bit = 0,                        /* file should be transfered in binary as opposed to text mode */
  127.     ICmap_binary_mask = 0x00000001,
  128.     ICmap_resource_fork_bit = 1,        /* the resource fork of the file is significant */
  129.     ICmap_resource_fork_mask = 0x00000002,
  130.     ICmap_data_fork_bit = 2,                /* the data fork of the file is significant */
  131.     ICmap_data_fork_mask = 0x00000004,
  132.  
  133.     ICmap_post_bit = 3,                            /* post process using post fields */
  134.     ICmap_post_mask = 0x00000008,
  135.  
  136.     ICmap_not_incoming_bit = 4,            /* ignore this mapping for incoming files */
  137.     ICmap_not_incoming_mask = 0x00000010,
  138.     ICmap_not_outgoing_bit = 5,            /* ignore this mapping for outgoing files */
  139.     ICmap_not_outgoing_mask = 0x00000020,
  140.  
  141.     ICmap_fixed_length = 22                    /* number in fixed_length field */
  142. };
  143.  
  144. struct ICServiceEntry {
  145.     Str255 name;
  146.     short port;
  147.     short flags;
  148. };
  149. typedef struct ICServiceEntry ICServiceEntry, *ICServiceEntryPtr, **ICServiceEntryHandle;
  150.  
  151. struct ICServices {
  152.     short count;
  153.     ICServiceEntry services[1];
  154. };
  155. typedef struct ICServices ICServices, *ICServicesPtr, **ICServicesHandle;
  156.  
  157. enum {
  158.     ICservices_tcp_bit = 0,
  159.     ICservices_tcp_mask = 0x00000001,
  160.     ICservices_udp_bit = 1,
  161.     ICservices_udp_mask = 0x00000002
  162.     /* both bits can be set, which means the service is both TCP and UDP, eg daytime */
  163. };
  164.  
  165. #if defined(powerc) || defined(__powerc)
  166. #pragma options align=reset
  167. #endif
  168.  
  169. #endif
  170.